package ru.agiledev.aos.frontend.client.panel;

import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.user.client.ui.*;

/**
 * Created by a.kirillov
 * Date: 2/25/12 Time: 12:00 PM
 */
public class AboutDialog extends DialogBox {
    public AboutDialog() {
         setText("Как работает система");
        VerticalPanel verticalPanel = new VerticalPanel();
        add(verticalPanel);


        ScrollPanel panel = new ScrollPanel();

        HTML text = new HTML("&nbsp&nbspОсновная задача <b>AOS Engine</b>  - это оптимизация поисковых запросов пользователя для того, чтобы найти более релевантные результаты в традиционной поисковой системе.\n" +
                "<br>&nbsp&nbspПринцип работы основан на анализе поискового запроса пользователя с целью определения его типа. Система обрабатывает запросы следующего вида:\n" +
                "<br><b>&nbsp&nbspОписание структуры</b> – «Как устроен двигатель внутреннего сгорания?», «структура компьютера Supermicro»\n" +
                "<br><b>&nbsp&nbspОписание характеристик</b> – «Каковы характеристики автомобиля Mercedes ML 350?»;\n" +
                "<br><b>&nbsp&nbspОписание работы</b> – «Как работает аппарат магнитно-резонансной томографии?»;\n" +
                "<br><b>&nbsp&nbspОписание функций</b> – «Каковы функции системы менеджмента качества?», «Какие функции выполняет сервер локальной сети?»;\n" +
                "<br><b>&nbsp&nbspОписание назначения</b> – «Для чего предназначен реостат?», «Каково назначение межкомпьютерной связи?»;\n" +
                "<br><b>&nbsp&nbspОписание применения</b> – «Где используется Java?», «Как применять активную XSS?»;\n" +
                "<br><b>&nbsp&nbspОписание принадлежности</b> – «К какому классу соединений относятся жиры?», «К какой категории помещений относятся офисы?»;\n" +
                "<br><b>&nbsp&nbspОписание различий</b> – «Чем отличается архитектура x86 от x64?», «В чем разница между процессорами Dual Core и Core 2 Duo?»;\n" +
                "<br><b>&nbsp&nbspОписание общих характеристик</b> – «Что общего у резины и каучука?», «Каковы общие черты финансов и денег?»;\n" +
                "<br><b>&nbsp&nbspОписание особенностей</b> – «Как ведет себя аргон при повышенном давлении?», «Каковы особенности работы буровой установки при высокой температуре?»;\n" +
                "<br><b>&nbsp&nbspОписание возможностей</b> –  «Каковы возможности платформы .NET?», «что может Linux?»;\n" +
                "<br><b>&nbsp&nbspВопрос достижения целей</b> - «Какие успехи были у компании Oracle?», «успехи компании Intel 2010 год» и т. д.;\n" +
                "<br><b>&nbsp&nbspВопрос изменения состава множеств</b> - «какие изменения были в составе руководства компании Газпром?», «изменения в составе компании Яндекс в департаменте разработки».\n" +
                "<br>&nbsp&nbspУлучшить результаты трансформации можно, указав перед объектом интереса слово, обозначающее данное понятие. Например, вместо «характеристики Lenovo T61» лучше указывать «характеристики компьютера Lenovo T61». Тогда система будет использовать базу знаний и найдет более релевантные результаты для понятия «компьютер». То же относится и к указанию слов «компания», «фирма», «департамент» и т.д." +
                "<br>&nbsp&nbspЕсли запрос был преобразован, то под строкой поиска появится ссылка <i><u>Запрос преобразован</u></i>, перейдя по которой можно увидеть результаты трансформации.");

        panel.add(text);
        panel.setHeight("500px");
        panel.setWidth("600px");

        verticalPanel.add(panel);


        HorizontalPanel bottom = new HorizontalPanel();
        verticalPanel.add(bottom);
        bottom.setHorizontalAlignment(HorizontalPanel.ALIGN_RIGHT);
        Button close = new Button("Закрыть");
        close.addClickHandler(new ClickHandler() {
            @Override
            public void onClick(ClickEvent clickEvent) {
                hide();
            }
        });
        bottom.add(close);
        setModal(true);
        center();
        hide();
    }
}
